package cn.ambeius.backend.dm.page;

public interface Page {

    /**
     * 功能描述：上锁
     *
     * @author HeJiaWei
     * @date 22/01/2024
     */
    void lock();

    /**
     * 功能描述：解锁
     *
     * @author HeJiaWei
     * @date 22/01/2024
     */
    void unlock();

    /**
     * 功能描述：释放
     *
     * @author HeJiaWei
     * @date 22/01/2024
     */
    void release();

    /**
     * 功能描述：设置是否为脏页
     *
     * @author HeJiaWei
     * @date 22/01/2024
     */
    void setDirty(boolean dirty);

    /**
     * 功能描述：是否为脏页
     *
     * @author HeJiaWei
     * @date 22/01/2024
     */
    boolean isDirty();

    /**
     * 功能描述：获取页码
     *
     * @author HeJiaWei
     * @date 22/01/2024
     */
    int getPageNumber();

    /**
     * 功能描述：获取数据
     *
     * @author HeJiaWei
     * @date 22/01/2024
     */
    byte[] getData();
}